The Home Phoneline Networking Alliance (HomePNA) is an incorporated, non-profit association of companies working to bring networking technology to the home. HomePNA envisions bringing Ethernet technology to the home by utilizing existing home phone wiring for the network physical medium. HomePNA provides specifications for the physical layer (PHY), its interface to an Ethernet MAC (Media Access Control), and its interface to the home phone wiring. See the IEEE (Institute of Electrical and Electronic Engineers) 802.3 standard for Ethernet.
The position of a HomePNA PHY in relationship to the OSI (Open Systems Interconnection) model is illustrated in FIG. 1. Logical Link Control (LLC) 102 and MAC 104 are implemented in accordance with IEEE 802.3, and HomePNA PHY 106 communicates with MAC 104 via interface 108. Additional sublayers, and other optional layers, may be added to the layers shown in FIG. 1 so that PHY 106 may provide services to other communication protocols, such as Gigabit Ethernet. In practice, PHY 106 and MAC 104 may be integrated on a single die, so that interface 108 is not readily visible.
PHY 106 receives a MAC frame from MAC 104, strips off the 8 octets of preamble and delimiter from the MAC frame, adds a HomePNA PHY header to form a HomePNA PHY frame, and transmits a PHY frame on physical medium 110. FIG. 2 illustrates HomePNA PHY framing. A PHY frame comprises Ethernet Packet 202, and appended to Ethernet Packet 202 is a HomePNA PHY header, comprising SYNC interval 204, Access ID (Identification) 206, Silence interval 208, and PCOM field 210.
A PHY frame is transmitted on physical medium 110 utilizing pulse position modulation (PPM). All PHY symbols transmitted on physical medium 110 comprise a pulse formed of an integer number of cycles of a square wave that has been filtered with a bandpass filter. The position of the pulse conveys the transmitted symbol. Differential signaling is employed, in which a pulse and its negative are transmitted on two wires for each transmitted symbol.
As indicated in FIG. 2, transmission begins with SYNC symbol 0, and Access ID field 206 is coded into seven AID (Access ID) symbols. SYNC symbol 0 may also be denoted as AID symbol 0. Access ID symbols 1 through 4 are used to identify individual stations to enable reliable collision detection. Access ID symbols 5 and 6 are used to transmit remote control management commands. AID symbol 7 is a silence interval.
SYNC symbol 0 and each AID symbol are 129 tics long, where 1 tic is defined as ( 7/60)10−6 seconds, which is approximately 116.667 nanoseconds. AID symbols 1 through 7 begin with a blanking interval of 60 tics, followed by a pulse positioned within one of four time slots to convey two bits of information. The time slots are separated by 20 tics, and are at positions 66, 86, 106, and 126 tics from the beginning of an AID symbol interval. SYNC symbol 0 is composed of a SYNC_START pulse beginning at tic=0 and a SYNC_END pulse beginning at tic=126.
In the example of FIG. 2, AID symbols 1 through 4 represent the Access ID word 00101101, where AID symbol 1 represents AID0=1 and AID1=0, AID symbol 2 represents AID2=1 and AID3=1, AID symbol 3 represents AID4=0 and AID5=1, and AID symbol 4 represents AID6=0 and AID7=0. AID symbols 5 and 6 represent the control word 0001, where AID symbol 5 represents Ctrl0=1 and Ctrl1=0, and AID symbol 7 represents Ctrl2=0 and Ctrl3=0.
A collision is detected only during AID symbols 0 through 7. If a transmitting station reads back an AID value that does not match its own, then a collision is indicated, and a JAM signal is transmitted to alert other stations. Non-transmitting stations may also detect non-conforming AID pulses as collisions. Only a transmitting station emits a JAM signal.
FIG. 3 illustrates in more detail MAC-to-HomePNA PHY interface 108. The signals RxD, RxClk, TxD, TxClk, TxEn, CRS, and COL are described in Table 1. HomePNA PHY 106 retains control of the TxClk and RxClk signals for clocking data synchronously in and out of MAC 104.
TABLE 1HomePNA PHY-to-MAC Interface Signals.MACInterfaceOutputSignalFromFunctionRxDPHYData to the MAC is synchronously clocked byRX_CLKRxClkPHYClock for RX_DATATxDMACData to the PHY is synchronously clocked byTX_CLKTxClkPHYClock for TX_DATATxENMACTransmit enable request from the MAC to beginsending data to the PHY.CRSPHYCarrier Sense indicates the PHY is receiving a validsignal from the wiring networkCOLPHYCollision. Indicates a collision was detected by thePHY on the wiring network
Devices connected to the network have the ability to detect whether they are connected to a “live” network or not by means of a valid link indication function. HomePNA PHY 106 provides a valid link indication via signal Valid Link 302. Valid Link signal 302 may be provided to other layers or a management entity, and indicates whether link 110 is determined by PHY 106 to be functioning.
Each PHY on the network transmits a link frame if it has not transmitted a normal data frame or link frame for 2.0 seconds. The reception of a normal data PHY frame or a link frame causes a valid link indication. Non reception of data or link frames within a time period of not less than 4.0 seconds causes Valid Link signal 302 to indicate an invalid link indication.
Link frames are obtained from link packets by appending a HomePNA header as described in reference to FIG. 2. Link packets are defined by the HomePNA to be either runt packets, null-addressed packets, or self-addressed packets. Runt packets are less than 64 bytes in length. The HomePNA recommends that link packets be implemented as indicated in Table 2.
TABLE 2Link PacketsFieldLengthDescriptionOption 1: Runt Packet (14 bytes)Destination Address 6 bytesThe Destination address is either a NULLaddress (all zeros), or the originatingstation's MAC address.Source Address 6 bytesThe Source address is either a NULLaddress (all zeroes), or the originatingstation's MAC addressType/Length 2 bytesThe type/length field is set to a bytesequence value of 00–01 (hex). This valueis an illegal length (not a type) that allowsa promiscuous mode sniffer to determinethat the runt is a HomePNA link frame.Option 2: Minimum Sized Packet (64 bytes)Destination Address 6 bytesThe Destination address is either a NULL(all zeros), or the originating station'sMAC address.Source Address 6 bytesThe Source address is either a NULLaddress (all zeroes), or the originatingstation's MAC addressType/Length 2 bytesThe Type/Length field is set to a bytesequence value of 00–2E (hex). Thisis a valid LLC length of 46 bytes.LLC Test PDU 3 bytesThe DSAP field is set to a byte sequenceHeadervalue of 00–00–F3 (hex). This indicates anull-DSAP LLC test request frame.Data43 bytesThe data area of the link frame containsthe following null terminated string:“HomePNA (version 1.1) Link heartbeatframe”This string allows promiscuous modesniffers to determine that the frame isa HomePNA link frame.CRC 4 bytesValid MAC CRC
Usually, the transmission of frames by a PHY requires a MAC layer. But for various market-demand reasons, it is desirable for a PHY to provide valid link indication functionality without assistance from a MAC or higher layer. This allows the use of Ethernet MAC chips that may not have valid link indication functionality built-in, and does not require the need to implement valid link indication functionality in software. The latter is important, not only because implementing valid link indication functionality in software may slow down system performance, but also because there may be power-saving states in which software will not work but for which link indication functionality is still needed. However, the requirement to have MAC functionality incorporated in a PHY is costly and leads to redundancy in devices that also have a MAC layer. It is therefore desirable for a PHY to have valid link indication functionality without the overhead of a MAC layer. There is also a need for a PHY to efficiently handle collisions between a link frame and a data frame, and between a link frame and another link frame. The present invention addresses these issues.